Video codec consists of an encoder that transforms the images of the input video into a compressed representation suited for storage/transmission and a decoder that can uncompress the compressed video representation back into a viewable form. Image sequences can be compressed either as sequences of still pictures coded with spatial prediction means or inter pictures coded with spatial and temporal prediction means. Image sequences with random access and support for editing individual pictures have been traditionally enabled by representing the sequence as a series of independently coded intra pictures. Such formats include, for example, Motion JPEG, animated GIF and the Intra profiles of H.264.
If a sequence of images is represented as a series of still pictures, the coding efficiency is typically poor and the file size requirement for a high resolution sequence can become massive. In the case a sequence is coded as a video with temporal prediction, there are strict limitations on how the sequence needs to be decoded, how it can be played back and issues when user wants to edit some of the images in the sequence.
Therefore, there is a need for more efficient methods for encoding and decoding image sequences while simultaneously providing random access and editability functionalities.